//
//  FSDNetWorkTool.h
//  NewsBar
//
//  Created by FSD on 15/12/1.
//  Copyright © 2015年 apple. All rights reserved.
//

#import <Foundation/Foundation.h>
#import <AFNetworking.h>

//请求成功的Block类型
typedef void(^SuccessBlock)(id result);

//请求失败的Block类型
typedef void(^FailBlock)(NSError *error);

//所有返回的数据类型的枚举

typedef NS_ENUM(NSUInteger, ResponseType) {
    ResponseTypeJSON,
    ResponseTypeXML,
    ResponseTypeDATA
};

//body类型
typedef NS_ENUM(NSUInteger, BodyType) {
    BodyTypeString,
    BodyTypeDictionary
};

@interface FSDNetWorkTool : NSObject

//get请求
//参数1：网址
//参数2：参数
//参数3：请求头
//参数4：成功请求数据的Block
//参数5：请求失败时的Block

/**
 *  get请求
 *
 *  @param url          URL
 *  @param parameter    参数
 *  @param header       请求头
 *  @param responseType 返回值类型
 *  @param success      成功
 *  @param fail         失败
 */
+ (void)getWithURL:(NSString *)url withParameter:(NSDictionary *)parameter httpHeader:(NSDictionary *)header responseType:(ResponseType)responseType success:(SuccessBlock)success fail:(FailBlock)fail;

//post请求

/**
 *  post请求
 *
 *  @param url          URL
 *  @param body         body体
 *  @param bodyType     body体类型
 *  @param header       请求头
 *  @param responseType 返回值类型
 *  @param success      成功
 *  @param fail         失败
 */
+ (void)postWithURL:(NSString *)url body:(id)body bodyType:(BodyType)bodyType httpHeader:(NSDictionary *)header responseType:(ResponseType)responseType success:(SuccessBlock)success fail:(FailBlock)fail;

@end
